1. Field of the Invention
The present invention relates to a method and apparatus for the manipulation of data in a computer system and the visual feedback which is provided thereof. More specifically, the present invention relates to an improved method and apparatus for selection and information from one location to another in a user interface display to cause certain actions to occur.
2. Background Information
Existing graphical user interfaces (GUIs) in computer systems provide a variety of tools to manipulate information. One of the key design characteristics of graphical user interface is the concept of direct manipulation. Traditional disk operating systems used a command line interface (such as the MS DOS operating system available from Microsoft Corporation of Redmond, Wash.), and English language commands are issued by a user in order to cause certain events to occur. In modern GUI's, files and other information are directly manipulated by selecting icons representing files and moving the icons while selected on the computer system display. In this manner, files may be moved, copied, deleted, and otherwise manipulated in the file system of the computer.
An example of this process is shown in FIGS. 1a-1d. For example, in FIG. 1a, in a window 100, which is displayed on a computer system display, the user may select an icon 120 representing a file using a cursor pointer 110 which is under user control using a mouse, trackball, or other cursor control device. Once selected the user may move or manipulate the icon in any manner in order to perform certain actions in the file system. Icon 120 is shown in its selected state in window 100 of FIG. 1a. Then, as is illustrated in FIG. 1b, the user may start to move cursor 110 while the icon is selected causing an outline image representation of the icon and its file name, which is illustrated as 130, to be moved on the computer system display. This allows the user to manipulate the file for movement within the file system. Then, as is illustrated in FIG. 1c, the user may move pointer 110 to a subdirectory entitled "Documents," shown as 140 in FIG. 1c (also known as a "folder" in the Macintosh.RTM. brand operating system), for movement of that file in the file system. When the "folder" icon 140 is pointed to by pointer 110, it becomes shown in its highlighted state, as is illustrated in FIG. 1c. Then, as is illustrated in FIG. 1d, when the user deselects the icon (that is, releases a mouse button or other selection means), the original icon 120 disappears from the window, and icon 140 is shown in an unselected state. In addition to the visual representation on window 100 as is illustrated in FIG. 1d, the file has been moved from the directory which window 100 represents to the subdirectory "Documents" represented by icon 140. For accessing the file represented by icon 120 at a later time, the user will select icon 140 causing a second window to be displayed representing that subdirectory and be able to access the file represented by icon 120. Thus, movements within the file system and reorganization of files in the file system, known as the HFS (Hierarchical Filing System) in the Macintosh.RTM. brand operating system, may be performed using this prior art technique.
Another prior art implementation of a movement of information in a graphical user interface such as that used by the Macintosh.RTM. brand operating system is illustrated with reference to FIGS. 2a-2d. For example, this is a process which may be used for transferring text between a window displaying one set of text (e.g., 210) and a second window with a second set of text in it (e.g., 220). As is illustrated in FIG. 2a, the user will select a region of text in document 210 utilizing cursor 200 under control of the cursor control and selection device and select an option from a pull-down menu 230, such as "Cut" 230a. This is a destructive move operation wherein the text is removed from document 210 and will be moved to document 220. This is all illustrated in FIG. 2a. Then, the user will move the cursor to second document 220 in text area 220a and select a region in the text at which he desires the text to be moved. The cursor in text region 220a will change to a format known as insertion carat 250 which indicates where the insertion point will be. Then, as is illustrated in FIG. 2c, the user will use pull-down menu 230 again, selecting a second option "Paste" 230b to retrieve text 240 from an intermediate storage device, such as a clipboard or other type of intermediate storage buffer, and insert the text at that location. As is illustrated in FIG. 2c, the text is still highlighted as this is shown immediately after the paste operation. Then, the highlighting is removed, as is illustrated in FIG. 2d, when the user selects other regions of the screen to operate in or performs other operations. Thus, as is illustrated in FIG. 2d, the destructive move operation from Document 1 210 to Document 2 220 has been accomplished. As is well-known to those skilled in the prior art, nondestructive "copy" operations may also be performed in a similar manner by selecting other pulldown menu options on pull-down menus such as FIGS. 2a and 2c. Note that the documents 210 and 220 may be under control of a single program, such as a word processing program, or may be under control of different application programs, such as one word processing program and a second word processing program or any other type of application program. As is well-known to those skilled in the prior art, transfer among different types of application programs may be accomplished using the cut and paste operations described with reference to FIGS. 2a-2d on a variety of architectural platforms using the intermediate storage buffer known as the clipboard. Other types of information such as graphical information, numeric information, or other types of information may be transferred in this manner.
Upon viewing FIGS. 1a-1d and 2a-2d, it is apparent that there is a dichotomy between the two techniques. Users become used to the manipulation of files in the manner which is illustrated with reference to FIGS. 1a-1d, however, the user must learn the use of a second tool known as the "Edit" pull-down menu illustrated as 230 in FIGS. 2a-2d in order to perform manipulation of information between windows and/or application programs and/or files. Thus, there is a need for improved manipulations of various types of data, especially between application programs than techniques which exist in the prior art.